<script setup lang="ts">
// 泛型  ----  类型的复用
// 如果要给一个对象定义类型：  interface  type

// 尖括号里面的 T 叫泛型变量， T是随便写的，一般约定就是T，type的开头
type ResponseType<T> = {
  code: number;
  message: string;
  success: boolean;
  data: T;
};

type User = {
  id: number;
  name: string;
  permission: object[];
};

type GoodList = {
  goodsId: number;
  goodsName: string;
};

// [].forEach()

type UserType = ResponseType<User>;
type GoodListTyep = ResponseType<GoodList>;

// 类型是不能打印的，只能打印具体的变量 值
// const userList: UserType = {}

// console.log(userList);
// console.log(UserType);
</script>

<template>
  <a class="main">123</a>
</template>
